package Set集合;
/*
* hash值是jdk根据对象的地址或则字符串或则数字算出来的int类型的数值
* 默认情况下，不同对象的hash值是不同的，而重写hashCode()方法，可以实现让不同对象的hash值相同
* */
public class 获取hash值 {
    public static void main(String[] args) {
        /*创建学生对象*/
        Student s1 = new Student("林青霞", 30);
        /*同一个对象多次调用hashCode()方法返回的hash值是相同的*/
        System.out.println(s1.hashCode());
        System.out.println(s1.hashCode());
        System.out.println("-------------");

        Student s2 = new Student("林青霞", 30);
        /*默认情况下，不同对象的hash值是不同的*/
        /*通过方法的重写，可以实现不同对象的hash值是相同的*/
        System.out.println(s2.hashCode());
        System.out.println("-----------");
        System.out.println("hello".hashCode());
        System.out.println("world".hashCode());
        System.out.println("java".hashCode());
        System.out.println("world".hashCode());
        System.out.println("--------------");
        System.out.println("重地".hashCode());
        System.out.println("通话".hashCode());
    }
}
/*
* Student学生类
* */
class Student{
    private String name;
    private int age;
    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }
    public Student() {
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
    public int hashCode(){
        return 0;
    }
}